Cấu trúc gói tin IP IPv4

Một gói tin IP bao gồm một đoạn header và đoạn dữ liệu

Header

Header của gói tin IPv4 bao gồm 13 trường, trong đó 12 trường là bắt buộc. Trường thứ 13 (được tô màu đỏ trong bảng) là tùy chọn, đúng với tên của nó: options. Các trường này trong header được lưu trữ với byte có ý nghĩa cao (the most significant byte) ở địa chỉ thấp (big endian), nói cách khác bit có ý nghĩa cao luôn ở địa chỉ thấp. Bit quan trọng nhất là bit số 0, vì vậy trường phiên bản (version) được lưu trong 4 bit đầu tiên của byte đầu tiên, ví dụ

bit offset0–34–78–1516–1819–31
0Version

(phiên bản)

Header length

(Độ dài Header)

Differentiated Services

(Phân loại dịch vụ)

Total Length (Tổng độ dài)
32Identification (định dạng)Flags (lá cờ)Fragment Offset (Vị trí phân rã offset)
64Time to Live (Thời gian giữ lại gói dữ liệu)Protocol (Giao thức)Header Checksum (Mã kiểm soát lỗi)
96Source Address (Địa chỉ máy trạm)
128Destination Address (Địa chỉ máy đích)
160Options (if Header Length > 5) (Tùy chọn (Nếu độ dài Header > 5))Padding (Vùng đệm)
160
or
192+

Data (Dữ liệu)
Phiên bản (Version)Trường đầu tiên trong header của gói tin IP chính là trường Phiên bản (Version) dài 4 bit. Với IPv4, nó có giá trị bằng 4.Độ lớn của header (Internet Header Length) (IHL)Trường thứ hai (4 bit) là độ lớn của header (Internet Header Length - IHL) cho biết số lượng các từ 32-bit trong header. Vì một header của gói tin IPv4 có thể chứa rất nhiều tùy chọn (options), trường này cho biết kích thước của header (nó cũng trùng với offset của data). Giá trị nhỏ nhất cho trường này là 5 (RFC 791), do đó gói tin có độ dài là 5×32 = 160 bit. Vì đây là số 4 bit nên độ dài lớn nhất có thể được của gói tin là 15 từ (15×32 bit) tức là 480 bit.Differentiated Services (DS)Ban đầu được định nghĩa là trường TOS, hiện tại trường này được định nghĩa trong RFC 2474Differentiated services (DiffServ) và trong RFC 3168Explicit Congestion Notification (ECN), để phù hợp với IPv6. Chỉ định dịch vụ mong muốn khi truyền các gói tin qua router. Trường này có 8 bít, xác định quyền ưu tiên, độ trễ, thông lượng, các đặc tính chỉ định độ tin cậy khác. Trường này gồm TOS (Type of Service) và Precedence. TOS xác định loại dịch vụ, bao gồm: giá trị, độ tin cậy, thông lượng, độ trễ hoặc bảo mật. Precedence xác định mức ưu tiên, sử dụng 8 mức từ 0-7. Các công nghệ mới xuất hiện yêu cầu các dòng dữ liệu thời gian thực (real-time data streaming) và sẽ sử dụng trường DS. Ví dụ Voice over IP (VoIP) được dùng để trao đổi dữ liệu là tiếng nói.Total LengthChỉ định tổng chiều dài gói tin IPv4 (cả phần mào đầu và phần dữ liệu). Kích thước 16 bít, chỉ định rằng gói tin IPv4 nhỏ nhất là 20 byte (chỉ có header không có dữ liệu) và có thể lớn tới 65.535 byte.IdentificationĐịnh danh gói tin. Kích thước 16 bít. Định danh cho gói tin được lựa chọn bởi nguồn gửi gói tin. Nếu gói tin IPv4 bị phân mảnh, mọi phân mảnh sẽ giữ lại giá trị trường định danh này, mục đích để nút đích có thể nhóm lại các mảnh, phục vụ cho việc phục hồi lại gói tin.

Data

Tài liệu tham khảo

WikiPedia: IPv4 http://www.inetcore.com/project/ipv4ec/index_en.ht... http://www.networksorcery.com/enp/protocol/ip.htm http://www.networkworld.com/news/2010/060710-tech-... http://www.potaroo.net/tools/ipv4/index.html http://www.ripe.net/rs/news/ipv4-ncc-20031030.html http://www.iana.org http://www.iana.org/assignments/ipv4-address-space http://www.icann.org/announcements/announcement-2-... https://www.apnic.net/community/ecosystem/igf/arti... https://commons.wikimedia.org/wiki/Category:IPv4?u...